import {legacy_createStore as  createStore,applyMiddleware,combineReducers} from "redux" // 引入创建仓库的方法
// applyMiddleware是用来处理中间件的
// combineReducers 是用来合并抽离之后的reducuder的
import logger from "redux-logger" // 在浏览器打印redux日志的中间件
// redux 由三部分组成，第一部分， reducer ，state,action 
import appreducer from "./appreducer"
import thunk from "redux-thunk" // thunk 是一个用来处理异步的中间件
import brrreducer from "./bppreducer"
// state 是仓库里定义得数据，action是修改数据的唯一途径
// action 需要用dispatch来触发
// 枪可以发射子弹，但是枪需要人人来扣动扳机
// react-redux 是将仓库和视图组件进行关联的
// 在redux中不希望影响原来的数据
let reducer = combineReducers({
    appreducer,
    brrreducer
})

export default createStore(reducer,applyMiddleware(thunk,logger))